package com.aifast.common.util;

import java.util.Arrays;

/**
 * 用于区分文件各种后缀名
 */
public class FileTypeUtil {

    private static final String[] imageArray = {"Webp", "BMP", "PCX", "TIF", "GIF", "JPEG", "TGA", "EXIF", "FPX", "JPG"
            , "SVG", "PSD", "CDR", "PCD", "DXF", "UFO", "EPS", "AI", "PNG", "HDRI", "RAW", "WMF", "FLIC", "EMF", "ICO", "AVIF", "APNG"};

    private static final String[] videoArray = {"MPEG", "AVI", "NAVI", "ASF", "MOV", "WMV", "3GP", "RM", "RMVB", "FLV", "F4V", "H.264", "H.265"};

    private static final String IMAGE = "image";
    private static final String VIDEO = "video";
    private static final String OTHER = "other";

    /**
     * 判断是否是图片
     *
     * @param str 后缀名
     * @return
     */
    public static boolean isImage(String str) {
        return Arrays.asList(imageArray).contains(str.toUpperCase());
    }

    /**
     * 判断是否是视频
     *
     * @param str
     * @return
     */
    public static boolean isVideo(String str) {
        return Arrays.asList(videoArray).contains(str.toUpperCase());
    }

    public static String getFileOfType(String str) {
        if (isImage(str)) {
            return IMAGE;
        }
        if (isVideo(str)) {
            return VIDEO;
        }
        return OTHER;
    }

}
